// $Id: popcount.cpp,v 6453a4c3269e 2009/02/25 13:55:36 oliver $
// Copyright (c) 2009 Oliver Lau <oliver@von-und-fuer-lau.de>
// Alle Rechte vorbehalten.

#include "popcount.h"

namespace randomtools {

    const size_t PopCount[65536] = {
       0, 1, 1, 2, 1, 2, 2, 3, 1, 2, 2, 3, 2, 3, 3, 4,
       1, 2, 2, 3, 2, 3, 3, 4, 2, 3, 3, 4, 3, 4, 4, 5,
       1, 2, 2, 3, 2, 3, 3, 4, 2, 3, 3, 4, 3, 4, 4, 5,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       1, 2, 2, 3, 2, 3, 3, 4, 2, 3, 3, 4, 3, 4, 4, 5,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       1, 2, 2, 3, 2, 3, 3, 4, 2, 3, 3, 4, 3, 4, 4, 5,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       1, 2, 2, 3, 2, 3, 3, 4, 2, 3, 3, 4, 3, 4, 4, 5,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       1, 2, 2, 3, 2, 3, 3, 4, 2, 3, 3, 4, 3, 4, 4, 5,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       1, 2, 2, 3, 2, 3, 3, 4, 2, 3, 3, 4, 3, 4, 4, 5,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       1, 2, 2, 3, 2, 3, 3, 4, 2, 3, 3, 4, 3, 4, 4, 5,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       1, 2, 2, 3, 2, 3, 3, 4, 2, 3, 3, 4, 3, 4, 4, 5,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       1, 2, 2, 3, 2, 3, 3, 4, 2, 3, 3, 4, 3, 4, 4, 5,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
       1, 2, 2, 3, 2, 3, 3, 4, 2, 3, 3, 4, 3, 4, 4, 5,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
      11,12,12,13,12,13,13,14,12,13,13,14,13,14,14,15,
       1, 2, 2, 3, 2, 3, 3, 4, 2, 3, 3, 4, 3, 4, 4, 5,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
      11,12,12,13,12,13,13,14,12,13,13,14,13,14,14,15,
       2, 3, 3, 4, 3, 4, 4, 5, 3, 4, 4, 5, 4, 5, 5, 6,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
      11,12,12,13,12,13,13,14,12,13,13,14,13,14,14,15,
       3, 4, 4, 5, 4, 5, 5, 6, 4, 5, 5, 6, 5, 6, 6, 7,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
      11,12,12,13,12,13,13,14,12,13,13,14,13,14,14,15,
       4, 5, 5, 6, 5, 6, 6, 7, 5, 6, 6, 7, 6, 7, 7, 8,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
      11,12,12,13,12,13,13,14,12,13,13,14,13,14,14,15,
       5, 6, 6, 7, 6, 7, 7, 8, 6, 7, 7, 8, 7, 8, 8, 9,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
      11,12,12,13,12,13,13,14,12,13,13,14,13,14,14,15,
       6, 7, 7, 8, 7, 8, 8, 9, 7, 8, 8, 9, 8, 9, 9,10,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
      11,12,12,13,12,13,13,14,12,13,13,14,13,14,14,15,
       7, 8, 8, 9, 8, 9, 9,10, 8, 9, 9,10, 9,10,10,11,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
      11,12,12,13,12,13,13,14,12,13,13,14,13,14,14,15,
       8, 9, 9,10, 9,10,10,11, 9,10,10,11,10,11,11,12,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
      11,12,12,13,12,13,13,14,12,13,13,14,13,14,14,15,
       9,10,10,11,10,11,11,12,10,11,11,12,11,12,12,13,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
      11,12,12,13,12,13,13,14,12,13,13,14,13,14,14,15,
      10,11,11,12,11,12,12,13,11,12,12,13,12,13,13,14,
      11,12,12,13,12,13,13,14,12,13,13,14,13,14,14,15,
      11,12,12,13,12,13,13,14,12,13,13,14,13,14,14,15,
      12,13,13,14,13,14,14,15,13,14,14,15,14,15,15,16
    };

};
